TypeScript Utilities
This is a collection of TypeScript utilities that we reuse across all TS projects.

Installation
Using Yarn
yarn add @myparcel/ts-utils
Using pnpm
pnpm add @myparcel/ts-utils
Using npm
npm install @myparcel/ts-utils
⚠️ Note: You can install this package as a dev dependency if you only use the types.
Contents
Type guard for checking if a value is a key of the given enum.
import {isEnumValue} from '@myparcel/ts-utils';
enum MyEnum {
A = 'A',
B = 'B',
}
const value = 'A';
if (isEnumValue(MyEnum, value)) {
}
Type guard which checks if given value is inside an array.
import {isInArray} from '@myparcel/ts-utils';
const value = 'A';
isInArray(value, ['A', 'B'])
Type guard for checking if an object value is of a specific type by checking if a given K exists.
import {isOfType} from '@myparcel/ts-utils';
interface BaseObject {
a: string;
b: number;
}
interface ObjectWithC extends BaseObject {
c: string;
}
const value = {
a: 'a',
b: 1,
c: 'c',
};
if (isOfType<ObjectWithC>(value, 'c')) {
}
Returns true if every element in the array satisfies the provided predicate.
import {asyncEvery} from '@myparcel/ts-utils';
await asyncEvery([1, 2, 3, 4, 5], async (value) => value > 0);
await asyncEvery([1, 2, 3, 4, 5], async (value) => value > 1);
Returns true if some element in the array satisfies the provided predicate.
import {asyncSome} from '@myparcel/ts-utils';
await asyncSome([1, 2, 3, 4, 5], async (value) => value > 4);
await asyncSome([1, 2, 3, 4, 5], async (value) => value > 5);
Converts a value to an array. If the value is already an array, it will be returned as is.
import {toArray} from '@myparcel/ts-utils';
toArray('plain value');
toArray(['already an array']);